Profiling live mod_perl backends
am 29.03.2009 22:08:31 von Cosimo StrepponeHi,
I have no experience in profiling mod_perl.
I'd like to use Devel::NYTProf to profile a production mod_perl backend.
There's an LVS load balancer in front of the mod_perl backends.
So far my idea is:
- identify 1 backend that I want to execute profiling on
- make sure it's idle (weight=0 in LVS)
- restart it with -X ??
- assign it some share of the production load
- let it run for "n" hours
- stop it
- collect profiling data
Is profiling mod_perl like this at all possible?
Does that make sense?
So far I've been profiling "statically" by having some
production backends write a special log file, letting
them run for 1 day, and then analyzing the log file
to gather data.
This method doesn't take into account stuff like TransHandlers,
and doesn't tell me which are the heaviest or most called
functions throughout all the code base.
So, any ideas? Or rather, what's the state-of-the-art of
profiling mod_perl apps?
--
Cosimo